
/**   
*    
* 项目名称：a_yongan   
* 类名称：GoodsinformationService   
* 类描述：   
* 创建人：liubo   
* 创建时间：2018年6月18日 下午4:33:03    
* 修改时间：2018年6月18日 下午4:33:03   
* 修改备注：   
* @version    
*    
*/
package com.yongan.workflow.service;

import java.util.List;

import com.yongan.user.exception.UserException;
import com.yongan.workflow.entity.FlowDetails;
import com.yongan.workflow.entity.PersonalWork;

/**
 * @author liubo
 *
 */
public interface PersonalWorkService {

	/**
	 * 普通用户获取自己的所有待办
	 * @param offset
	 * @param limit
	 * @return
	 */
	List<PersonalWork> getPersonalWorkList(int offset,int limit,String userId);
	/**
	 * 普通用户获取自己的所有待办首页展示
	 * @param offset
	 * @param limit
	 * @return
	 */
	List<PersonalWork> getPersonalWorkListUp(int offset,int limit,String userId);
	/**
	 * 管理员获取所有待办
	 * @param offset
	 * @param limit
	 * @return
	 */
	List<PersonalWork> getPersonalWorkListAdmin(int offset,int limit);
	/**
	 * 获取一条待办文档
	 * @param offset
	 * @param limit
	 * @return
	 */
	PersonalWork getPersonalWorkById(String personalWorkId);
	/**
	 * 创建待办文档
	 * @param offset
	 * @param limit
	 * @return
	 */
	Boolean addPersonalWork(String url,String userId,String docId,String type) throws UserException;
	/**
	 * 删除待办
	 * @param offset
	 * @param limit
	 * @return
	 */
	Boolean deletePersonalWork(String docId) throws UserException;
	/**
	 * 提交下一环节
	 * @param offset
	 * @param limit
	 * @return
	 */
	Boolean nextPersonalWork(String docId,String type) throws UserException;
	/**
	 * 退回上一环节
	 * @param offset
	 * @param limit
	 * @return
	 */
	Boolean upPersonalWork(String docId,String type) throws UserException;
	/**
	 * 获取某一用户的所有待办数量
	 * @param offset
	 * @param limit
	 * @return
	 */
	int getCount(String userId);
	/**
	 * 获取某一用户的所有已办数量
	 * @param offset
	 * @param limit
	 * @return
	 */
	int getCountYiBan(String userId);
	/**
	 * 获取所有待办数量
	 * @param offset
	 * @param limit
	 * @return
	 */
	int getCountAdmin();
	//List<FlowDetails> getAllGoodsinformationList();
	
	FlowDetails getFlowDetail(String docId);
	
	/**
	 * 返回待办文档
	 * @param offset
	 * @param limit
	 * @return
	 */
	PersonalWork getPersonalWork(String docId);
}
